Derivatives By-Address for Fortran 77
نویسنده
چکیده
FIXME Automatic differentiation tools use 1 of 2 strategies to access derivative values. These strategies are: 1. By-address 2. By-name The by-address method is typically implemented by introducing structured types for each active scalar type. For example, scalar type ’real’ will have an associated structure type ’active-real’. Using this strategy, all active variables types are changed to the associated structured type. On the other hand, the by-name method introduces an associated new variable for each active variable. For example, the derivatives associated with ’pressure’ would be ’d_pressure’. Since the by-address strategy employs structured types, AD tools for Fortran 77 have not employed that strategy. In this paper, we show how to use array access to implement the by-address strategy for Fortran 77. We discuss the canonicalization issues, outline our Adifor3.0 implementation of this technique, and give a few sample performance comparisons of the by-address vs the standard Adifor3.0 by-name.
منابع مشابه
ADIFOR - Generating Derivative Codes form Fortran Programs
The numerical methods employed in the solution of many scientiic computing problems require the computation of derivatives of a function f : R n ! R m. Both the accuracy and the computationalrequirements of the derivativecomputation are usually of critical importance for the robustness and speed of the numerical solution. ADIFOR (Automatic Diierentiation In FORtran) is a source transformation t...
متن کاملAdifor: a Fortran System for Portable Automatic Differentiation
Automatic diierentiation provides the foundation for sensitivity analysis and subsequent design optimization of complex systems by reliably computing derivatives of large computer codes, with the potential of doing it many times faster compared to current approaches. This paper describes the ADIFOR (Automatic DIIerentiation of FORtran) system, a translator that augments Fortran programs with st...
متن کاملAdifor Working Note #5: Adifor: Automatic Diierentiation in a Source Translator Environment Adifor: Automatic Diierentiation in a Source Translator Environment
The numerical methods employed in the solution of many scientiic computing problems require the computation of derivatives of a function f : R n ! R m. ADIFOR (Automatic Diierentiation In FORtran) is a source transformation tool that accepts Fortran 77 code for the computation of a function and writes portable Fortran 77 code for the computation of the derivatives. In contrast to previous appro...
متن کاملauto_deriv: Tool for automatic differentiation of a Fortran code
AUTO_DERIV is a module comprised of a set of FORTRAN 90 procedures which can be used to calculate the first and second partial derivatives of any continuous function with many independent variables. The function should be expressed as one or more FORTRAN 90 or FORTRAN 77 procedures. A new type of variables is defined and the overloading mechanism of functions and operators provided by the FORTR...
متن کاملADF95: Tool for automatic differentiation of a FORTRAN code designed for large numbers of independent variables
ADF95 is a tool to automatically calculate numerical first derivatives for any mathematical expression as a function of user defined independent variables. Accuracy of derivatives is achieved within machine precision. ADF95 may be applied to any FORTRAN 77/90/95 conforming code and requires minimal changes by the user. It provides a new derived data type that holds the value and derivatives and...
متن کامل